/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package pe.edu.pucp.dp1.procesamiento.controlador;

import pe.edu.pucp.dp1.gui.controlador.GestorGUI;
import pe.edu.pucp.dp1.procesamiento.modelo.MatrizInterseccionOptima;
//import pe.edu.pucp.dp1.procesamiento.modelo.MatrizInterseccionSalida;
import Shared.MatrizInterseccionSalida;

/**
 *
 * @author Edgard
 */
public class HiloZona extends Thread {

    /**
     *
     */
    public static GestorInterseccion gestorInter = GestorInterseccion.getInstance();
    public static GestorGUI gestorGUI = GestorGUI.getInstance();

    private MatrizInterseccionSalida matrizIntSalida;
    private MatrizInterseccionOptima matrizIntOptima;

    public void run() {

        while (true) {
            try {
                //System.out.println("Ejecucion HiloZona");

                gestorInter.ActMatInterSalida(matrizIntSalida, matrizIntOptima);
                //gestorInter.ImpMatInterSalida(matrizIntSalida);
                //gestorInter.ImpMatInterSalidaMapa(getMatrizIntSalida());

                //Obtener zona activa a mostrar
                /*if (gestorGUI.getZonaActivaX() == matrizIntSalida.getxIni() && gestorGUI.getZonaActivaY() == matrizIntSalida.getyIni()) {
                    gestorGUI.ActMapaGUI(matrizIntSalida);
                }*/
                gestorGUI.ActVehGUI(gestorInter.genDataVehiculos());//Se le pasa data aleatoria
                System.out.println("Vehic aleatoria seteada");
                Thread.sleep(1000);
            } catch (Exception e) {
            }
        }
    }

    public HiloZona(MatrizInterseccionSalida matrizIntSalida, MatrizInterseccionOptima matrizIntOptima) {
        this.matrizIntSalida = matrizIntSalida;
        this.matrizIntOptima = matrizIntOptima;
    }

    public MatrizInterseccionSalida getMatrizIntSalida() {
        return matrizIntSalida;
    }
}
